package org.xw.service;

import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import jakarta.servlet.http.HttpServletRequest;
import org.xw.pojo.ChatPojo;
import org.xw.pojo.MembersPojo;
import org.xw.utils.ResponseUtil;

import java.util.List;

public interface ChatService {

    ResponseUtil create(HttpServletRequest httpServletRequest,ChatPojo chatPojo);


    ResponseUtil Pull(HttpServletRequest httpServletRequest, List<MembersPojo> membersPojos);

    ResponseUtil getChatById(HttpServletRequest httpServletRequest, Integer chatId);

    ResponseUtil out(HttpServletRequest httpServletRequest, List<MembersPojo> membersPojos);

    ResponseUtil dissolve(HttpServletRequest httpServletRequest, Integer chatId);


    ResponseUtil quit(HttpServletRequest httpServletRequest, Integer chatId);

    ResponseUtil top(HttpServletRequest httpServletRequest, Integer chatId);

    ResponseUtil update(HttpServletRequest httpServletRequest, ChatPojo chatPojo);

    List<Integer> getUserIds(int chatId);

    ResponseUtil qw(String userId, String msg) throws NoApiKeyException, InputRequiredException;

    ResponseUtil getChatList(HttpServletRequest httpServletRequest);
}
